package com.whfc.fmam.dao;

import com.whfc.fmam.entity.bo.FmamWeighRoom;
import com.whfc.fmam.entity.dto.FmamWeighRoomDTO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface FmamWeighRoomMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(FmamWeighRoom record);

    int insertSelective(FmamWeighRoom record);

    FmamWeighRoom selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(FmamWeighRoom record);

    int updateByPrimaryKey(FmamWeighRoom record);

    void deleteLogicById(@Param("id") Integer id);

    /**
     * 查询项目的磅房列表
     *
     * @param deptId
     * @return
     */
    List<FmamWeighRoomDTO> selectFmamWeighRoomByDeptId(@Param("deptId") Integer deptId);

    /**
     * 根据code查找
     *
     * @param code
     * @return
     */
    FmamWeighRoom selectByCodeAndDeptId(@Param("code") String code, @Param("deptId") Integer deptId);

    /**
     * 获取组织机构下所有磅房ID
     *
     * @param deptId deptId
     * @return List<Integer>
     */
    List<Integer> selectWeighRootIdByDeptId(@Param("deptId") Integer deptId);

    /**
     * 获取指定项目下随机磅房
     *
     * @param deptId 组织机构ID
     * @return 磅房
     */
    FmamWeighRoom getRandomWeighRoom(@Param("deptId") Integer deptId);
}